.TH VLOCK 1 "28 July 2007" "Linux" "Linux User's Manual"
.SH NAME
vlock \- Virtual Console lock program
.SH SYNOPSIS
.B vlock [ -hv ]
.PP
.B vlock [ -acns ] [ -t <timeout> ] [ plugins... ]
.SH DESCRIPTION
.B vlock
is a program to lock one or more sessions on the Linux console.  This is
especially useful for Linux machines which have multiple users with access
to the console.  One user may lock his or her session(s) while still allowing
other users to use the system on other virtual consoles.  If desired, the
entire console may be locked and virtual console switching disabled.
.PP
By default, only the current VC (virtual console) is locked.  With the
\fB-a,--all\fR option all VCs are locked.  The locked VCs cannot be unlocked
without the invoker's password or the root password.  The root password will
always be able to unlock any or all sessions, unless disabled at compile time.
.PP
Please note that it is entirely possible to completely lock yourself out of the
console with the \fB-a,--all\fR option if you cannot remember your password!
Unless you are able to kill vlock by logging in remotely via a serial terminal
or network, a hard reset is the only method of ``unlocking'' the display.
.PP
When locking the entire console display it is sometimes still possible to kill
vlock using the Secure Access Key (SAK) or other commands that are available
through the SysRq mechanism.  When the \fB-s,--disable-sysrq\fR and
\fB-a,--all\fR options are given the SysRq mechanism is disabled while vlock is
running.  See /usr/src/linux/Documentation/sysrq.txt for more details.
.PP
vlock works for console sessions primarily.  To lock the entire console display
from an X session use the \fB-n,--new\fR option.  This will make vlock switch
to an empty virtual console to lock the display. 
.PP
The options \fB-n,--new\fR, \fB-s,--disable-sysrq\fR, and \fB-t,--timeout\fR
only work if vlock is compiled with plugin support.  See the PLUGINS section
for more information.
.SH OPTIONS
.B -a,--all
.IP
Lock all console sessions and disable VC switching.
.PP
.B -c,--current
.IP
Lock the current session (this is the default).
.PP
.B -n,--new
.IP
Switch to a new virtual console before locking all console sessions.
.PP
.B -s,--disable-sysrq
.IP
Disable the SysRq mechanism while consoles are locked.  This option only works
if the \fB-a,--all\fR option given.
.PP
.B -t,--timeout <seconds>
.IP
Specify the timeout for the screensaver plugins.  See vlock-plugins(5) for more
information.
.PP
.B -h,--help
.IP
Print a brief help message.
.PP
.B -v,--version
.IP
Print the version number.
.PP
.SH "ENVIRONMENT VARIABLES"
The following environment variables can be used to change vlock's behavior:
.PP
.B USER
.IP
If this variable is when \fBvlock\fR is run as root (uid 0) vlock locks the
screen as this user instead of root.  The root password will still be able to
unlock the session, unless disabled at compile time.
.PP
.B VLOCK_ALL_MESSAGE
.IP
If this variable is set and all consoles are locked its contents will be used
as the locking message instead of the default message.
.PP
.B VLOCK_CURRENT_MESSAGE
.IP
If this variable is set and only the current consoles is locked its contents
will be used as the locking message instead of the default message.
.PP
.B VLOCK_MESSAGE
.IP
If this variable is set its contents will be used as the locking message
instead of the default.  This overrides the former two variables.
.PP
.B VLOCK_PLUGINS
.IP
If this variable is set it is interpreted as a space separated list of plugins
that will be loaded when vlock starts additionally to the ones listed on the
command line.
.PP
.B VLOCK_TIMEOUT
.IP
Set this variable to specify the timeout (in seconds) after which the screen
saver plugins (if any) will be invoked.  If this variable is unset or set to an
invalid value or 0 no timeout is used.  See vlock-plugins(5) for more
information about plugins.
.PP
.B VLOCK_PROMPT_TIMEOUT
.IP
Set this variable to specify the amount of time (in seconds) you will have to
enter your password at the password prompt.  If this variable is unset or set
to an invalid value or 0 no timeout is used.  \fBWarning\fR: If this value is
too low, you may not be able to unlock your session.
.PP
.SH FILES
.B ~/.vlockrc
.IP
This file is read by \fBvlock\fR on startup if it exists.  All the variables
mentioned above can be set here.
.SH SECURITY
See the SECURITY file in the \fBvlock\fR distribution for more information.
.PP
.SH "SEE ALSO"
.BR vlock-main (8),
.BR vlock-plugins (5)
.SH AUTHORS
Michael K. Johnson <http://danlj.org/mkj/>
.PP
Frank Benkstein <frank-vlock@benkstein.net>
